<!DOCTYPE html>
<html>
<head>
    <title>SeaweedFS {{ .Version }}</title>
    <link rel="stylesheet" href="/seaweedfsstatic/bootstrap/3.3.1/css/bootstrap.min.css">
</head>
<body>
<div class="container">
    <div class="page-header">
        <h1>
            <a href="https://github.com/chrislusf/seaweedfs"><img src="/seaweedfsstatic/seaweed50x50.png"></img></a>
            SeaweedFS <small>{{ .Version }}</small>
        </h1>
    </div>

    <div class="row">
        <div class="col-sm-6">
            <h2>Cluster status</h2>
            <table class="table table-condensed table-striped">
                <tbody>
                <tr>
                    <th>Volume Size Limit</th>
                    <td>{{ .VolumeSizeLimitMB }}MB</td>
                </tr>
                <tr>
                    <th>Free</th>
                    <td>{{ .Topology.Free }}</td>
                </tr>
                <tr>
                    <th>Max</th>
                    <td>{{ .Topology.Max }}</td>
                </tr>
                {{ with .RaftServer }}
                <tr>
                    <th>Leader</th>
                    <td><a href="http://{{ .Leader }}">{{ .Leader }}</a></td>
                </tr>
                <tr>
                    <th>Other Masters</th>
                    <td class="col-sm-5">
                        <ul class="list-unstyled">
                            {{ range $k, $p := .GetConfiguration.Configuration.Servers }}
                            <li><a href="http://{{ $p.ID }}/ui/index.html">{{ $p.ID }}</a></li>
                            {{ end }}
                        </ul>
                    </td>
                </tr>
                {{ end }}
                </tbody>
            </table>
        </div>

        <div class="col-sm-6">
            <h2>System Stats</h2>
            <table class="table table-condensed table-striped">
                <tr>
                    <th>Concurrent Connections</th>
                    <td>{{ .Counters.Connections.WeekCounter.Sum }}</td>
                </tr>
                {{ range $key, $val := .Stats }}
                <tr>
                    <th>{{ $key }}</th>
                    <td>{{ $val }}</td>
                </tr>
                {{ end }}
            </table>
            <h2>Raft Stats</h2>
            <table class="table table-condensed table-striped">
                <tr>
                    <th>applied_index</th>
                    <td>{{ .RaftServer.Stats.applied_index }}</td>
                </tr>
                <tr>
                    <th>last_log_term</th>
                    <td>{{ .RaftServer.Stats.last_log_term }}</td>
                </tr>
            </table>
        </div>
    </div>

    <div class="row">
        <h2>Topology</h2>
        <table class="table table-striped">
            <thead>
            <tr>
                <th>Data Center</th>
                <th>Rack</th>
                <th>RemoteAddr</th>
                <th>#Volumes</th>
                <th>Volume Ids</th>
                <th>#ErasureCodingShards</th>
                <th>Max</th>
            </tr>
            </thead>
            <tbody>
            {{ range $dc_index, $dc := .Topology.DataCenters }}
            {{ range $rack_index, $rack := $dc.Racks }}
            {{ range $dn_index, $dn := $rack.DataNodes }}
            <tr>
                <td><code>{{ $dc.Id }}</code></td>
                <td>{{ $rack.Id }}</td>
                <td><a href="http://{{ $dn.Url }}/ui/index.html">{{ $dn.Url }}</a>
                    {{ if ne $dn.PublicUrl $dn.Url }}
                    / <a href="http://{{ $dn.PublicUrl }}/ui/index.html">{{ $dn.PublicUrl }}</a>
                    {{ end }}
                </td>
                <td>{{ $dn.Volumes }}</td>
                <td>{{ $dn.VolumeIds}}</td>
                <td>{{ $dn.EcShards }}</td>
                <td>{{ $dn.Max }}</td>
            </tr>
            {{ end }}
            {{ end }}
            {{ end }}
            </tbody>
        </table>
    </div>

</div>
</body>
</html>
